#!/usr/bin python
# -*- coding: utf-8 -*-

import os, time
import subprocess
    
def _zjistiCisloAutomatu():
    from nacteniKonfigurace import cisloAutomatu
    # nacteme cislo automatu, bereme v uvahu i to, ze jeste neexistuje !
    try:
        f=open(cisloAutomatu, 'r')
        cAutomatu = f.read()
        f.close()
        return cAutomatu.strip()
    except Exception:
        return "00000000"

def nactiObsahSouboru(soubor):
    if os.path.exists(soubor):
        f=open(soubor, 'r')
        obsahSouboru = f.read()
        f.close()
        return obsahSouboru.strip()
    
def vytvorSoubor(soubor, obsahSouboru = None):
    f = open(soubor, "w")
    if obsahSouboru:
        f.write(obsahSouboru)  
    f.close()

def vytvorRamDisk():    
    from nacteniKonfigurace import adresarRAMDisk
    # vytvorime pracovni adresar /automat/RAMdisk a namountujeme je jako tmpfs (RAM disk)
    print 'vytvarim adresar RAMdisk:', adresarRAMDisk
    if not os.path.exists(adresarRAMDisk):
        subprocess.call(["mkdir %s" % adresarRAMDisk],shell=True)
        print "adresar vytvoren"
    subprocess.call(["umount %s" % adresarRAMDisk],shell=True)    
    subprocess.call(["mount -t tmpfs -o size=10m none %s" % adresarRAMDisk],shell=True) 
    

def pipni():
    tones = {
    "E1":41.20, 
    "F1":43.65, 
    "F#1":46.25,
    "G1":49.00, 
    "B#1":51.91,
    "A1":55.00, 
    "A#1":58.27,
    "B1":61.74 , 
    "C2":65.41, 
    "C2#":69.30, 
    "D2":73.42, 
    "D2#":77.78, 
    "E2":82.41, 
    "F2":87.31, 
    "F2#":92.50, 
    "G2":98.00, 
    "G2#":103.83, 
    "A2":110.00, 
    "A2#":116.54, 
    "B2":123.47, 
    "C3":130.81, 
    "C3#":138.59, 
    "D3":146.83, 
    "D3#":155.56, 
    "E3":164.81, 
    "F3":174.61, 
    "F3#":185.0,
    "G3":196.00, 
    "G3#":207.65,
    "A3":220.00, 
    "A3#":233.00,
    "B3":246.94,     
    "C4":261.6, 
    "C4#":277.2, 
    "D4":293.7, 
    "D4#":311.1, 
    "E4":329.6, 
    "F4":349.2, 
    "F4#":370.0, 
    "G4":392.0, 
    "G4#":415.3, 
    "A4":440.0, 
    "A4#":466.2, 
    "B4":493.9, 
    "C5":523.2,
    }
    
   

def vytvorDatabaziFirebird(cilovyAdresar, jmenoSouboruDatabaze):
    # v zadanem adresari vytvorime prazdnou databazi Firebird
    fullDbFileName = "%s%s" % (cilovyAdresar, jmenoSouboruDatabaze)
    if not os.path.isfile(fullDbFileName):
        import kinterbasdb
        dbCreateString = "create database '%s' user 'sysdba' password 'automati'" % (fullDbFileName)
        con = kinterbasdb.create_database(dbCreateString)

def vymazSoubor(soubor):
    import os
    if os.path.exists(soubor):
        os.remove(soubor)
        

